import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.function.BiConsumer;

public class Mapli {
    public static void main(String[] args) {
        //1.创建MAP集合的对象
        Map<String, String> m = new HashMap<>();
        //2. 添加元素
        //细节：覆盖/添加
        //在添加数据时，如果键不存在，那么直接把键值对对添加到map集合当中
        //在添加数据的时候，如果键是存在的，那么会把原有的键值对覆盖，会把覆盖值返回。
        m.put("郭靖", "黄蓉");
        m.put("韦小宝", "沐剑屏");
        m.put("尹志平", "黄蓉");

        /*//3.通过键找值
        //3.获取所有的键，把这些键放到一个单列集合当中
        Set<String> keys=m.keySet();
        //3.2遍历单列集合，得到每一个键
        //增强for
        for (String key : keys) {
         //   System.out.println(key);
            //3.3利用map集合中的键获取对应的值 get
            String value=m.get(key);
            System.out.println(key+"="+value);}*/
        //3.键值对对象
       /* //3.1通过一个方法获取所有的键值对对象，返回一个Set集合
        Set<Map.Entry<String, String>> entries = m.entrySet();
        //3.2遍历entries这个集合，去得到每一个键值对对象
        for (Map.Entry<String, String> entry : entries) {
            String key=entry.getKey();
            String value=entry.getValue();
            System.out.println(key+"="+value);
        }*/
       //3.利用Lambda遍历
         m.forEach(new BiConsumer<String, String>() {
             @Override
             public void accept(String key, String value) {
                 System.out.println(key+"="+value);
             }
         });
        System.out.println("-------------------------------");
        m.forEach((String key, String value) ->{
                System.out.println(key+"="+value);
            }
        );
        System.out.println("-------------------------------");
        m.forEach(( key, value) ->System.out.println(key+"="+value) );


    }
}